package cn.wolfcode.trip.base.domain;

import cn.wolfcode.trip.base.util.JSONUtil;
import lombok.Getter;
import lombok.Setter;

import java.util.HashMap;
import java.util.Map;

/**
 * 旅游地区
 */
@Setter
@Getter
public class Region extends BaseDomain{
    public static final int STATUS_DISABLE = -1;//禁用
    public static final int STATUS_COMMON = 0;//普通
    public static final int STATUS_HOT = 1;//热门
    private String name;//名称

    private Region parent;//上级地区

    private Integer state = STATUS_COMMON;//状态
    //获取treeview所需要的值的方法
    public Map<String, Object> getTreeView(Region region){
        Map<String,Object> map = new HashMap<>();
        //节点属性
        map.put("id",id);
        map.put("text",name);
        map.put("lazyLoad",true);//使用懒加载(添加+图标)
        //判断状态是否是热门
        if (state == STATUS_HOT){
            map.put("tags",new String[]{"推荐"});
        }
        return map;
    }
    //获取json属性
    public String getJson(){
        Map<String, Object> map = new HashMap<>();
        map.put("id",id);
        map.put("name",name);
        map.put("state",state);
        if (parent!=null){
            map.put("parentId",parent.id);
            map.put("parentName",parent.name);
        }
        return JSONUtil.toJSONString(map);
    }
}